﻿using System;
using System.Web.Configuration;
using Infraestructura.Dominio;
using Infraestructura.Excepciones;
using Infraestructura.Fachada;

namespace pyfweb.Dinamico.Account
{
    public partial class Login : System.Web.UI.Page
    {
        private IFachada fachada;

        protected void Page_Load(object sender, EventArgs e)
        {
            fachada = (IFachada)Session["fachada"];
        }

        protected void btnLogin_Click(object sender, EventArgs e)
        {
            Usuario usuario = new Usuario();
            usuario.Nombre = txtUser.Text;
            usuario.Clave = txtPass.Text;

            try
            {
                Usuario resultado = fachada.ValidaUsuario(usuario);
                if (resultado != null)
                {
                    Session["user"] = resultado;
                    if (chkMantener.Checked)
                    {
                        // La sesion no expira
                        Session.Timeout = int.MaxValue;
                    }

                    Response.Redirect("~/Dinamico/Default.aspx");
                }
                else
                {
                    lblTextoError.Text = "Nombre de usuario o contraseña incorrecto";
                }
            }
            catch (ExcepcionFachada ex)
            {
                lblTextoError.Text = "Ocurrio un error durante el inicio de sesion: " + ex.Message;
            }
        }
    }
}